The approaches described in this section could be pursued, but are not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated herein, the approaches described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
Network service providers desire to provide for deployment and maintenance of customer premises equipment (CPE) devices, such as broadband routers and the like, which may be used for residences and small businesses. Automatic network configuration provisioning approaches may provide for generating and downloading sets of configuration instructions, or configuration files, for network devices that are deployed in the field to subscribers of services provided by service providers. It is desirable to be able to perform such provisioning automatically, however, without requiring a subscriber to manually enter configuration commands, and without requiring a technician associated with a network service provider to visit the subscriber and configure the device.
In one example approach, a vendor manufactures customer premises equipment network devices, and “drop-ships” the CPEs to the premises of subscribers of a network service provider. The CPEs are shipped with a generic bootstrap or minimal configuration that is copied from or generated at the vendor based on a standard template or format specified by the service provider. When a subscriber installs and powers-up a CPE, under control of the bootstrap configuration the CPE uses an interface specified in the bootstrap configuration to contact a configuration manager associated with the service provider. The configuration manager downloads a permanent, application-specific configuration to the CPE, which executes the received configuration and begins normal operation.
In the process described above, the startup configuration is typically overwritten in memory and there is no current provision for persistent storage of the initial minimal configuration. As a result, if the permanent configuration is lost or modified in a way that prevents the CPE and the network management system from communicating, there is no way to recover that communications in an automatic manner. Typically, a technician or other skilled service person must travel to the customer's premises to manually reconfigure the device.
One approach that addresses these issues uses a rollback mechanism that saves a current configuration or configurations at periodic intervals, and enables the user to rollback to a previous configuration. While at first glance this approach seems to address lost or corrupted configuration issues, in reality such rollback approaches are fraught with difficulty. One disadvantage to rollback approaches is that there is no certainty that because a prior configuration worked in establishing connectivity that the prior configuration will still be workable in a current environment. Network environments are fluid and accordingly, what worked yesterday may not work tomorrow. In particular, security related network parameters, such as certificates, passwords and the like, change with time. Systems designed to recognize security related parameters do not track the history of these parameters. Such systems will not recognize a previous password or an outdated certificate as an attempt to reestablish connectivity after a device fault or corruption of a configuration file.
Based on the foregoing, there is a clear need for improved recovery capabilities for remotely installed devices to recover from a device fault or a corrupted device configuration.